package com.zrrd.learn.chapter02;

import java.util.Scanner;

/**
 * 学习一个java里的方法
 *
 * @author wrn
 * @version 1.0
 * @date 2023/4/15 14:14
 */

public class LearnMethod01 {


    /**
     * 全局变量
     */

    int a = 9;

//    函数 定义函数 (方法)

    /**
     * 通用方法
     *
     * @ 访问修饰符 个人(.java)       二人世界(没有)(本类本包)        三口之家(本类本包子类)        所有人
     * private            default/friendly            protected               public
     * @ 修饰符1    static 静态 (静态只能访问静态)
     * @ 修饰符2    final 最终不可变(这个为方法不被重写)
     * @ 返回值类型 基本类型 | void(有返回值，但是值为空，return 可以省略)
     * @ 名称 首字母小写
     */
//    [访问修饰符] [修饰符1] [修饰符2] [返回值类型] [名称](形参类型 形参名称,形参类型, 形参名称...){
//
//          return 返回值类型;
//    }
    public static int add(int x, int y) {
        return x + y;
    }

    /**
     * 一个方法可以调用其他方法
     */
    public  static  int add1(int x , int y , int z){
        return add(add(x,y),z);
    }

    //递归: 方法可以调用其他方法，一个方法可以调用自己吗？ 可以 . 递归

    /**
     * 方法里面调方法自己 (终止条件)
     *
     * @param n
     * @return
     */
    public static int addRecursive(int n){
        return (n == 1 ? 1 :n + addRecursive(n-1));
    }
    public static int addRecursive1(int n){
        return (n == 10 ? 10 :n + addRecursive1(n+1));
    }

    /**
     * 主函数  主方法
     *
     * @param args
     */
    public static void main(String[] args) {
        System.out.println(addRecursive1(1));

        // 需求分析 : 52 4 40 10 -40  定义  ：  十位 1红桃  2 方块  3 黑桃  4 梅花
        for (int i = 10, len = 50; i < len; i++) {
            //选择结构
            int bit = i % 10;
            int ten = i / 10;
            String card = "";
            if (ten == 1) {
                card = "红桃" + (bit + 1);
            }else if(ten == 2){
                card = "方块" + (bit + 1);
            }else if(ten == 3){
                card = "黑桃" + (bit + 1);
            }else{
                card = "梅花" + (bit + 1);
            }
            System.out.printf("当前数为%d,个数为%d,十位为%d,这是一张%s\n", i, bit, ten, card);
        }
        //输入函数
        // 表示可以让人与计算机控制台交互
        Scanner scan = new Scanner(System.in);

        System.out.println("请赌神抽牌");

        int first = scan.nextInt();

        int bit = first % 10;
        int ten = first / 10;

        String card = "";
        if (ten == 1) {
            card = "红桃" + (bit + 1);
        }else if(ten == 2){
            card = "方块" + (bit + 1);
        }else if(ten == 3){
            card = "黑桃" + (bit + 1);
        }else{
            card = "梅花" + (bit + 1);
        }

        System.out.println(card);

    }


}